package cn.e4j.modular.crm.mapper;

import cn.e4j.core.dto.impl.Dto;
import cn.e4j.modular.crm.entity.GwdczT;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;

import java.time.LocalDate;
import java.util.List;
import java.util.Map;

/**
 * <p>
 * Mapper 接口
 * </p>
 *
 * @author yuan_rz
 * @since 2019-01-28
 */
public interface GwdczTMapper extends BaseMapper<GwdczT> {
    /**
     * 查询组合促销价格维护信息列表
     */
    List<Map<String, Object>> listPage(@Param("page") Page<Object> page, @Param("dto") Dto dto);
    /**
     * 查询组合促销价格维护信息列表
     */
    List<Map<String, Object>> listPageOra(@Param("page") Page<Object> page, @Param("dto") Dto dto);

    Dto getGwdb(@Param("GWDBENT") String GWDBENT, @Param("GWDB003") String GWDB003,
                @Param("GWDB012") String GWDB012, @Param("GWDB014") String GWDB014,
                @Param("GWDC008") LocalDate GWDC008);
    Dto getGwdbOra(@Param("GWDBENT") String GWDBENT, @Param("GWDB003") String GWDB003,
                   @Param("GWDB012") String GWDB012, @Param("GWDB014") String GWDB014,
                   @Param("GWDC008") LocalDate GWDC008);
    Dto getGwdb2(@Param("GWDBENT") String GWDBENT, @Param("GWDB003") String GWDB003,
                @Param("GWDB012") String GWDB012, @Param("GWDB014") String GWDB014,
                @Param("GWDC008") LocalDate GWDC008);
    Dto getGwdb2Ora(@Param("GWDBENT") String GWDBENT, @Param("GWDB003") String GWDB003,
                 @Param("GWDB012") String GWDB012, @Param("GWDB014") String GWDB014,
                 @Param("GWDC008") LocalDate GWDC008);
    Dto getGwak010(@Param("GWAKENT") String GWAKENT, @Param("GWAK001") String GWAK001);

    Dto getGwdc(@Param("GWDCENT") String GWDCENT, @Param("GWDC001") String GWDC001,
                @Param("GWDC016") String GWDC016, @Param("GWDC018") String GWDC018);

    /**
     * 查询根据活动编号查询商品信息列表
     */
    List<Map<String, Object>> listGwdc(@Param("dto") Dto dto);

    /**
     * 查询根据活动编号查询赠品信息列表
     */
    List<Map<String, Object>> listGwdcz(@Param("dto") Dto dto);

    /**
     * 查询根据活动编号查询gwdct
     */
    List<Map<String, Object>> listGwdct(@Param("dto") Dto dto);

    List<Map<String, Object>> getGwdc001Data(@Param("page") Page<Object> page, @Param("dto") Dto dto);
    List<Map<String, Object>> getGwdc001DataOra(@Param("page") Page<Object> page, @Param("dto") Dto dto);

}
